1. Field of the Invention
This invention relates to a server interconnect architecture for supplying Broadband On-Demand Services (for example, Video-On-Demand (VOD), WEB browsing, etc.) in a communication network to residential or business communication services subscribers. More particularly, this invention relates to selectively interconnecting a plurality of media servers at a headend in the communication network to subscriber terminals attached to the network.
2. Description of the Related Art
The state of the art in the delivery of entertainment services and other services to subscribers is exemplified by a full service network described in copending, commonly-assigned U.S. patent application Ser. No. 08/802,833, filed Feb. 19, 1997, entitled xe2x80x9cSystem and Method For Providing A Full Service Television Systemxe2x80x9d invented by M. L. LaJoie et al. One embodiment of the LaJoie et al full service network or cable system is shown in FIG. 1 herein.
As illustrated in FIG. 1, a preferred full service network 1 comprises five primary components: a headend 2; at least one fiber transport 3, at least one distribution hub 4; at least one hybrid fiber coax plant 5; and a plurality of set-top terminals 6. The set-top terminal 6 is a subscriber terminal in the cable network. A subscriber terminal is any device connected to a cable network that provides security, navigation and other services to a subscriber. The subscriber terminal may be a standalone set-top, or incorporated into a television, Personal Computer, DVD (Digital Video Disk) player, or other subscriber equipment.
Headend 2 provides the primary source of services and control of system 1. Programs, services and control signals are delivered to the subscribers"" set-top terminals 6 from headend 2 by transmitting signals through fiber transport 3, distribution hub 4, and hybrid fiber coax plant 5.
The subscribers may also interact with the services and programming provided by headend 2. This is accomplished by set-top terminals 6 in the subscribers"" homes transmitting signals back through hybrid fiber coax 5, distribution hub 4, and fiber transport 3 to headend 2. In this way, a two-way, interactive, full service network is provided.
In order to provide the services and control of system 1, headend 2 includes a plurality of digital satellite receivers 10, a Broadcast Cable Gateway (BCG) 11, a plurality of analog receivers 12, a plurality of Integrated Receiver Decoders (IRD) 13, analog scrambling and modulation circuitry 20, an Addressable Controller (AC) 14, a plurality of application servers 15, a plurality of media servers 16, a digital switch or multiplexer 17, and an Interactive Cable Gateway (ICG) 18.
The programs and services generated by headend 2 are received from primary sources: Digital satellite transmissions from digital service providers, analog satellite transmissions from analog service providers, application services on application servers 15, and media services on media servers 16. Digital and analog services provide the more traditional forms of television broadcast services, including services such as television programs and information services. Application servers provide services, such as database services, network management services, transactional electronic commerce services, system administration console services, application specific services (such as stock ticker, sport ticker, and weather), resource management services, connection management services, subscriber care services, billing services, operation system services, and object management services. Media servers provide time-critical media assets including MPEG-2 encoded video and audio, MPEG-2 encoded still images, WEB pages, bit-mapped graphic images, PCM digital audio, application programs, and application data files. A media asset is defined as a collection of one or more of these stream or file types together with the associated meta-data that binds them together.
In order to provide this multitude of cable services to subscribers over the cable network, the signals are modulated onto a plurality of 6 MHz Frequency Division Multiplexed (FDM) channels in the RF Spectrum from 5 MHz through 860 MHz. More specifically, the 6 MHz FDM channels can be used to carry analog channels with Vertical Blanking Interval (VBI) signals, Forward Application Transport (FAT) channels, Forward Data Channels (FDC), and Reverse Data Channels (RDC). The frequencies of the analog channels are in the range of 50 to 500 MHz, the FAT channels are in the range of 50 to 750 MHz, and the RDCs and FDCs are in the ranges of 5 to 40 MHz and 50 to 750 MHz, respectively.
Digital services are received from satellites by digital satellite receivers 10. The signals received by digital satellite receivers 10 arrive in a Quadrature Phase Shift Key (QPSK) modulated, encrypted MPEG-2 transport stream format. Once the satellite signals have been received by the digital satellite receivers, Broadcast Cable Gateway (BCG) 11 converts the signals for transmission over the cable system""s communication network under the control of addressable controller 14. Broadcast Cable Gateway 11 demodulates, applies Forward Error Correction (FEC), if desired, and decrypts the satellite transmission to recover an MPEG-2 transport stream. The MPEG-2 stream is then manipulated by BCG 11 to remove unwanted programs from the stream to form an MPEG-2 payload. BCG 11 then encrypts the payload (if desired), adds FEC and modulates the payload onto a Forward Application Transport (FAT) 6 MHz FDM channel. The modulation used on the FAT channels is preferably 64 or 256 Quadrature Amplitude Modulation (QAM) which enables the channels to carry digital data at rates typically in the range of 27 or 38 Mbps, respectively.
Analog programs and services are received from satellite transmissions by receivers 12 and processed by integrated receiver decoders 13 and analog scrambler and modulator 20. Analog satellite receivers 12 typically receive the satellite transmissions from the analog service providers in a modulated and scrambled NTSC format. Integrated receiver decoders 13 demodulate and descramble the satellite signals into NTSC signals, and then analog scrambler and modulator 20 scrambles using the cable system""s scrambling method, if desired, and modulates the NTSC signals onto an analog 6 MHz FDM channel. The FDM modulation frequencies and scrambling techniques used for the NTSC signals are preferably selected to maintain downward compatibility with analog set-top terminals which may be already deployed at the time of implementation of the full service network.
Application and media programs and services are provided by application and media servers 15 and 16 under the control of addressable controller 14 through digital switch or multiplexer 17, interactive cable gateway 18 and data channel gateways 19 in distribution hubs 4. The programs and services by servers 15 and 16 are preferably provided in MPEG-2 transport stream format. Addressable controller 14 may oversee the distribution of programs and services by servers 15 and 16 by processing requests for programs and services from the set-top terminals, instructing the servers when, how and where to deliver a requested program or service and directing the programs and services through the digital switch or multiplexer 17 to the interactive cable gateway 18 in headend 2 and the data channel gateways 19 in the distribution hubs 4.
Digital switch, or multiplexer 17, connects servers 15 and 16 with addressable controller 14, interactive cable gateway 18 and data channel gateways 19 in distribution hubs 4. Addressable controller 14 provides control signals to servers 15 and 16, set-top terminals 6, BCG 11 and Data Channel Gateways (DCGs) 19. Controller 14 communicates with DCGs 19 and set-top terminals 6 via Internet Protocol (IP) datagrams through Forward (in the direction towards set-top terminals 6) and Reverse (in the direction towards headend 2) data channels.
Because the programs and services provided by the application servers 15 typically do not require high bandwidth, these servers may be connected to digital switch or multiplexer 17 directly (as shown), or via intermediate networks. Media servers 16, however, do require a great deal of bandwidth, and accordingly are best connected to digital switch or multiplexer 17 directly. Furthermore, to achieve the high bandwidth requirement, media servers 16 should incorporate disk drives utilizing interfaces achieving at least the speeds of SCSI Fast and SCSI wide interfaces, with Ultra SCSI and Fiber Channel interfaces being preferred.
Interactive Cable Gateway (ICG) 18 processes the servers"" signals so that they may be transmitted over the cable system""s communication network. Signals from servers 15 and 16 received at ICG 18 through digital switch or multiplexer 17 are encrypted, if desired, subjected to Forward error correction (FEC), if desired, and modulated onto a 6 MHz FAT channel using 64 or 256 Quadrature Amplitude Modulation.
The analog channels, forward application transport channels, forward data channels and reverse data channels are transmitted between the cable headend and the set-top terminals over the cable system""s communication network. As shown in FIG. 2, Fiber Transport 3 connects headend 2 to distribution hubs 4. Fiber Transport 3 is a ring of fiber optic cable connecting multiple distribution hubs 4 to a headend 2. Six strands in the fiber optic cable of Fiber Transport 3 are usually dedicated to each hub 4 on the ring and each hub is typically within twenty miles of the headend 2. In cases in which hub 4 is more than twenty miles from headend 2, an intermediate hub 4 may be used to repeat the signals in Fiber Transport 3. By utilizing a ring of Fiber Transport 3, no distribution hub 4 is cut off from headend 2 by a single break in fiber transport 3.
Hybrid Fiber Coax Plants 5 connect distribution hubs 4 to set-top terminals 6. Plants 5 comprise a network of fiber optic cables 25, a plurality of nodes 26, and a plurality of coaxial cables 27. A plurality of Radio Frequency (RF) amplifiers (not shown) may also be required in intermittent spacing throughout coaxial cables 27 to compensate for losses which occur when the coaxial cable is split to connect each set-top terminal. Nodes 26 convert the optical signals in fiber optic cables 25 from the distribution hub 4 into electrical signals for transmission on coaxial cables 27 to set-top terminals 6. Return signals from set-top terminals 6 on coaxial cables 27 are converted to optical signals by nodes 26 for transmission in fiber optic cables 25 to distribution hubs 4.
As shown in FIG. 1, each hub 4 comprises a plurality of Data Channel Gateways 19 which support the Forward and Reverse Data Channels between hubs 2 and set-top terminals 6. The signals in Forward and Reverse Data Channels between headend 2 and DCGs 19 are Internet Protocol datagrams. Between DCGs 19 and set-top terminals 6 these Internet Protocol datagrams may be encrypted and decrypted, if desired, and QPSK modulated and demodulated. Accordingly, the Data Channel Gateways 19 include routing, encryption, decryption, QPSK modulation, and QPSK demodulation functions.
Referring to FIG. 3, one embodiment of set-top terminals 6 used in the full service network is illustrated. As shown, a set-top terminal 6 comprises a Central Processing Unit (CPU) 30, a Memory Management Unit (MMU) 31, a Unified Memory Architecture (UMA) 32 comprising ROM, NVRAM, Flash ROM, and DRAM, an MPEG decompression unit 33, an NTSC descramble unit 34, an IP router 35, a security unit 36, a QAM 64/256 demodulator 37, an NTSC decoder 38, a QPSK demodulate unit 39, a QPSK modulate unit 40, a first tuner 41, a second tuner 42, a transmitter 43, and NTSC encoder 44, an RF output 45, a graphics subsystem 46, an S-Video output 47, a baseband video output 48, an audio subsystem 49, an AC-3 audio output 50, a baseband audio output 51, an I/O subsystem 52, a keypad 53, an LED display 54, an IR receiver 55, an IR transmitter 56, an accessories bus interface 57, and a 10-base-T interface 58.
Controlling the operation of set-top terminal 6 is Central Processing Unit 30. Preferably, CPU 30 is a processor that can support 32-bit arithmetic and logical operations that can operate at speeds of at least 25 MIPs, and that supports a system of dynamically prioritizable hardware and software interrupts. An example of a suitable processor for CPU 30 is the SUN MicroSystems Micro-SPARC core. CPU 30 operates by executing instructions stored in Unified Memory Architecture 32 under the control of an operating system such as the Power TV Operating system by Power TV, Inc. of Cupertino, Calif. CPU 30 accesses UMA 32 through Memory Management Unit 31. MMU 31 provides memory protection for application processes and the kernel, and provides a flat address space for user processes.
Memory, or UMA, 32 comprises Read Only Memory (ROM), Flash ROM, Non-Volatile Random Access Memory (NVRAM), and Dynamic RAM (DRAM). ROM is used primarily for the storage of the operating system and application software available at the time of manufacture of set-top terminal 6. At least 1 Mbyte of Read Only Memory should be provided in UMA 32. Flash ROM is used primarily for the storage of resident application software, as well as patches to the operating system and application software. These patches will be downloaded to set-top terminal 6 from headend 2 after the set-top terminal has been deployed in the subscriber""s home. At least 1 Mbyte of Flash ROM should be provided in memory 32. NVRAM is used primarily for the storage of settings such as parental control codes, favorite channel line-ups, set-top terminal setups, channel maps, authorization tables, and Forward Data Channel address assignments. At least 2 Kbytes of NVRAM should be provided in UMA 32. Dynamic RAM is used for most application and operating system storage requirements such as the stack, heap, graphics, Interactive Program Guide data, channel map, VCR codes, and marketing data, usage data and functions such as MPEG-2 video decompression, AC-3 audio decoding, and video manipulation. At least four Mbytes of Dynamic RAM should be provided in memory 32.
Frequency Division Multiplexed (FDM) signals from headend 2 are initially received by tuners 41 and 42 through Hybrid Fiber Coax Plant 5. In-band tuner 41 receives program and services transmitted to the set-top terminal on analog channels and Forward Application Transport channels. These programs and services include analog programs and services from analog satellite broadcasts, digital programs and services from digital satellite broadcasts, digital program and services from digital satellite broadcasts, some digital program and services from the application servers, and digital program and services from the media servers. NTSC decoder 38 receives the analog program and services from tuner 41 and produces NTSC baseband signals. QAM 64/256 demodulator 37 receives the digital services from in-band tuner 41 and demodulates the signal into MPEG-2 payloads. Out-of-band tuner 42 receives only incoming IP datagram messages from headend 2 on the Forward Data Channel. Messages which are transmitted from the headend to the set-top terminals in Internet Protocol datagrams on the Forward Data Channel include Interactive Program Guide data messages as well as other data and control messages. These messages are QPSK demodulated by QPSK demodulator 39 to reveal the IP datagrams. The analog NTSC baseband signals, the digital MPEG-2 payloads, and the digital IP datagrams are descrambled (if necessary), decrypted (if necessary) and screened by security unit 36. Additionally, security unit 36 provides encryption, key management, authentication, and secure transaction functions, and prevents downloading of viruses, vandalism of software, theft of services, falsified orders, tampering with the set-top terminal, and direct cloning or re-manufacturing of the set-top terminal.
After descrambling, decryption, and screening by security unit 36, the baseband signals, MPEG-2 payloads, and IP datagrams are passed on to the analog-to-digital converter 34, MPEG-2 decompression unit 33, and IP router 35. As their names imply, A/D converter 34 converts the NTSC baseband signals to digital signals; MPEG-2 decompression unit 33 decompresses the MPEG-2 payloads; and IP router 35 routes the IP datagrams toward their ultimate destination.
Outgoing IP datagram messages are also processed by IP router 35. After routing the outgoing IP datagrams, security unit 36 screens and encrypts the IP datagrams (if necessary). The IP datagrams are then QPSK modulated by QPSK modulator 40 and transmitted to Hybrid Fiber Coax Plant 5 by out-of-band transmitter 43.
The video and audio outputs of set-top terminal 6 are generated by NTSC encoder 44, graphics subsystem 46, audio subsystem 49 and RF modulator 61. NTSC encoder 44 generates S-Video output 47 and baseband video output 48 from digitized MPEG-2 and NTSC video. Graphics subsystem 46 produces graphic images and scales MPEG-2 and NTSC video. Audio subsystem 49 produces the audio outputs for set-top terminal 6 including AC-3 audio output 50 and baseband audio output 51. RF modulator 61 generates NTSC RF output 45 necessary to drive a television without S-Video or baseband inputs from signals received from NTSC encoder 44 and audio subsystem 49.
I/O subsystem 52 controls the input and output controls and the 10-base-T interface 58 for set-top terminal 6. As shown in FIG. 3, I/O subsystem 52 receives inputs from keypad 53, I/R receiver 55, accessories bus 57, and 10-base-T interface 58. I/O subsystem 52 also produces outputs to LED display 54, I/R transmitter 56, accessories bus 57 and 10-base-T interface 58. Keypad 53 enables the user to control set-top terminal 6 without requiring the use of a remote control 59. LED display 54 provides a numeric display for channel or time indication, and a plurality of single LEDs to indicate status such as power on, message waiting, set-top output disabled, etc. I/R receiver 54 is used to receive and digitize input from remote control 59. I/R transmitter 56 is used to control a VCR 60 or send updates to remote control 59. Accessories bus 57 is used to connect to external equipment such as a keyboard, joystick, mouse, I/R transmitter, etc. The 10-base-T interface can be used to connect to Ethernet interfaces in equipment such as routers, personal computers, or home entertainment equipment.
In this full service network, it would be desirable to provide an improved media server interconnect from the headend to the set-tops so as to provide more on-demand service versatility and capacity at reasonable cost.
In accordance with this invention an improved media server interconnect to subscriber terminals is accomplished with a plurality of media servers at a headend where each media server provides one or more on-demand programs or services for distribution to the subscriber terminals. An array of modulators connects a requested media asset, such as a video program, WEB page, etc., from a media server to a requesting subscriber terminal. A connection manager responds to a media asset request from the requesting subscriber terminal and selects a source server to provide the requested media asset and selects a modulator in the array to send the requested media asset from the source server to the requesting subscriber terminal.
In another feature of the invention, the array of modulators acts as a two stage switch between the source server and the requesting subscriber terminal. A selected modulator in said array is the switch point in the two stage switch. The connection manager controls a first stage of the switch by selecting the selected modulator to receive the requested media asset from the source server. The requesting subscriber terminal acts as a second stage of the two stage switch also under the control of the connection manager by tuning to the channel frequency of the selected modulator.
In another feature of the invention, the connection manager allocates a program identifier to the requested media asset and notifies the subscriber terminal of the program identifier. The source media server sends the requested media asset as digital data packets. The source media server inserts the program identifier in each digital data packet of the requested media asset. The requesting subscriber terminal, responds to the program identifier in the digital data packets and extracts the digital data packets of the requested media asset from a data stream received from the selected modulator.
In another feature of the invention, the array, or matrix of modulators, is a rectangular array of modulators. Each modulator in a row of modulators in the rectangular array receives a media asset from a media server linked to the modulator, and each modulator in a row modulates at the same frequency a number of media assets from the media server. Each modulator in a column of modulators in the rectangular array modulates at a different frequency a media asset from its media server. A node group combiner combines all of the modulated media assets from a column of modulators for distribution to a predefined set of subscriber terminals. The pre-defined set of subscriber terminals is a node group of subscriber terminals. In one embodiment, each modulator in a row is linked in parallel to the media server for the row. In another preferred embodiment, each modulator in a row is linked in series to the media server for the row. In the latter embodiment, the connection manager allocates a program identifier to the requested media asset and notifies a selected modulator in the row of the program identifier. The selected modulator responds to the program identifier, extracts the digital data packets and modulates the digital data packet of the requested media asset for transmission to the requesting subscriber terminal.